#ifndef __DIGIMON_H__
#define __DIGIMON_H__
#include "digimon_api.h"


#define DIGI_VOID void
struct digimon_st
{
    uint16_t      digi_id;                      /* id */
    char          digi_name[DIGI_NAMELEN];      /* name */
    uint8_t       digi_level;                   /* 宠物等级 */
    uint16_t      digi_status;                  /* 状�?? */
    uint8_t       digi_age;                     /* age */
    int8_t        digi_weight;                  /* 体重 */
    int8_t        digi_hungry;                  /* 饥饿�? */
    uint8_t       digi_strength;                /* 力气 */
    int8_t        digi_dp;                      /* dp */ 
    uint8_t       digi_maxdp;                   /* �?大DP */
    uint8_t       digi_type:4;                  /* 类型 */
    uint8_t       digi_enableB:2;               /* 战斗许可 */
    uint8_t       digi_enableJ:2;               /* 合体许可 */
    int           digi_evolution;               /* 进度�? */
    int           digi_max_evolution;           /* 进度条最大�?? */
    uint16_t      digi_currency;                /* 货币 */
    uint8_t       digi_light;                   /* �? */
    uint8_t       digi_misscall;                /* misscall */
    uint32_t      digi_time;                    /* 宠物生存计数 */
    uint8_t       digi_dabian;                  /* 大便的数�? */
    uint8_t       digi_health;                  /* 宠物的健康度 */

    uint16_t      digi_battle;                  /* 对战场数 */
    uint8_t       digi_win;                     /* 胜利场数 */
    uint8_t       digi_attck;                   /* 战斗�? */
    uint8_t       digi_defence;                 /* 防御�? */
    uint8_t       digi_miss;                    /* 闪避�? */

    uchar    (*bmp)[DIGIMON_W][DIGIMON_H];                /* 贴图 */
    uchar    (*skill_bmp)[4];              /* �?能贴�? */
};

/****************************************
 *  ʳ��
 * **************************************/
enum food{
    FOOD_DRUMSTICKS = 0,    /* ���� */
    FOOD_POTION,            /* DPҩ */
    FOOD_MEDICINE,          /* ���� */
    FOOD_HURT_MED,          /* ���� */
};

/****************************************
 *  ѵ��
 * **************************************/
enum trining{
    TRI_CLASSIC = 0,            /* ��ͨѵ�� */
    TRI_PENDULUM,               /* ҡ��ѵ�� */
    TRI_SEARCH,                 /* ����ѵ�� */
};

/****************************************
 *  ս��
 * **************************************/
enum battle{
    BATTLE = 0,             /* ս������ */
    JOCRES                  /* �������� */
};

/****************************************
 *  ���뱦������
 * **************************************/
enum digit_type{
    TYPE_FR,                /* δ֪ */
    TYPE_NSp,               /* ��Ȼ��� */
    TYPE_DS,                /* ����� */
    TYPE_NSo,               /* ج�ξ��� */
    TYPE_WG,                /* ��֮���� */
    TYPE_ME,                /* �����۹� */
    TYPE_VB,                /* �������� */
    TYPE_DR,                /* ��֮���� */
    TYPE_JT,                /* ������� */
    TYPE_DA,                /* �ڰ����� */
    TYPE_UK                 /* �޷����� */
};

/****************************************
 *  ���뱦��״̬
 * **************************************/
enum digi_sta{
    STA_NORMAL = 0,         /* ���� */
    STA_ILL,                /* ���� */
    STA_HURT,               /* ���� */
    STA_SHIRT,              /* ��ʺ */
    STA_SLEEP,              /* ˯�� */
    STA_HUNGRY,             /* ���� */
    STA_FULL_HUNGRY,        /* ���� */
    STA_FULL_DP,            /* ��DP */
    STA_FULL_POWER,         /* ������ */
    STA_FULL_EVLUTION,      /* ������ */
};
    
/****************************************
 *  ���뱦���ȼ�
 * **************************************/
enum digi_level{
    DIGI_EGG,               /* �� */
    DIGI_YOUZHIQI,          /* ������ */
    DIGI_YOUNIANQI,         /* ������ ������ */
    DIGI_CHENGZHANGQI,      /* �ɳ��� �ǹ��� */
    DIGI_CHENGSHUQI,        /* ������ ������ */
    DIGI_WANQUANTI,         /* ��ȫ�� ��е������ */
    DIGI_JIUJITI,           /* ������ ս�������� */
    DIGI_CHAOJIUJITI,       /* �������� */
};
#if 1
#define EGG_TIME             (1*3)
#define YOUZHIQI_TIME        (1*5)
#define YOUNIANQI_TIME       (1*7)
#define CHENGZHANGQI_TIME    (10)
#define CHENGSHUQI_TIME      (15)
#define WANQUANTI_TIME       (20)
#define JIUJITI_TIME         (25)
#else
#define EGG_TIME             (1*10)
#define YOUZHIQI_TIME        (1*60)
#define YOUNIANQI_TIME       (12*60*60)
#define CHENGZHANGQI_TIME    (24*60*60)
#define CHENGSHUQI_TIME      (40*60*60)
#define WANQUANTI_TIME       (48*60*60)
#define JIUJITI_TIME         (50*60*60)

#endif

#endif
